Hybris UX Api icon

Hybris UX Api

(0 reviews)

TMF639 - getLogicalResource & getLogicalResourceById

List & Retrieve Logical Resource

List Logical Resource:

  1. List Available ESIM(ICCID) Numbers (Prepaid & Postpaid)
  2. List Available Service(MSISDN) Numbers (Prepaid & Postpaid)

Retrieve Logical Resource:

  1. Retrieve Status of ESIM(ICCID) Numbers
  2. Retrieve Status of Service(MSISDN) Numbers
URL
https://[host]:[port]/ecom-ux/v1/{businessId}/logicalResource
https://[host]:[port]/ecom-ux/v1/{businessId}/logicalResource/{id}
URL PARAMS
nametypedescriptionrequired
businessIdString2 letter ISO 3166 country code (PA) identifying the business unit.Y(PA,JM)
idStringDefines the unique ESIM(ICCID) or Service(MSISDN) NumberY(PA),N/A(JM)
Headers
nametypedescriptionrequired
client_idStringThe client-id identifying the channel.Y(PA,JM)
client_secretStringPassword associated with the client-id.Y(PA,JM
X-Correlation-IDStringIdentifier that correlates HTTP request between a client and server. Any identification model (UUDI, checksum, etc.) can be used, as long as it is a unique value to differentiate a transaction.N(PA,JM)
Query Params
nametypedescriptionrequired (mandatory-Y, optional-N, Not applicable- N/A)
@typeStringdefines the entity name. Eg: "ESIM", "MSISDN"Y (PA),Y(JM for both eSIM and MSISDN)
place.idStringIdentification of the regional area code embedded within a service number. (numberAreaCode)Y (PA only for MSISDN usecase),Y(JM only for MSISDN)
resourceStatusStringStatus of the resource , Possible Values: [reserved,available]N (PA),N(JM)
valueStringCheck the status of a single MSISDN numberN (PA only for MSISDN usecase),N/A(JM)
relatedParty.idStringRepresents the unique identifier Eg for PA: ECOMY (PA only for eSIM usecase),N/A(JM)
relatedParty.roleStringRole played by the related party Possible values for PA: DEALERY (PA only for eSIM usecase),N/A(JM)
resourceCharacteristic.nameStringName of the characteristic Possible values for PA & JM: SERVICEN (PA for eSIM usecase & PREPAID MSISDN),Y(JM only for eSIM), N/A(for JM MSISDN)
resourceCharacteristic.valueStringValue of the characteristic Possible values for PA & JM: POSTPAID, PREPAIDN (PA only for eSIM usecase & PREPAID MSISDN),Y(JM only for eSIM), N/A(for JM MSISDN)
limitIntegerRequested number of resources to be provided in responseY (PA only for eSIM usecase & PREPAID MSISDN),N/A(JM)
Data Model
Response Headers
nametypedescriptionrequired (mandatory-Y, optional-N, Not applicable- N/A)
X-Total-CountIntegerActual number of items returned in the response bodyY (PA, List Logical Resource ESIM),N/A(JM)
Data Model Response
field nametypedescriptionrequired (mandatory-Y, optional-N, Not applicable- N/A)
idStringIdentifier of an instance of the resource. Required to be unique within the resource type.Y(PA),Y(JM)
hrefStringHyperlink referenceY(PA),Y(JM)
@typeStringdefines the resource nameY(PA),Y(JM)
resourceStatusStringStatus of the resource. Possible Values: [reserved,available]Y(PA),N(JM only for MSISDN)
resourceCharacteristic[].nameStringName of the characteristicY(PA for POSTPAID eSIM usecase & both PREPAID usecase),Y(JM only for eSIM), N/A(for JM MSISDN)
resourceCharacteristic[].valueTypeStringData type of the value of the characteristicY (PA for POSTPAID eSIM usecase & both PREPAID usecase),Y(JM only for eSIM), N/A(for JM MSISDN)
resourceCharacteristic[].valueStringValue of the characteristicY (PA for POSTPAID eSIM usecase & both PREPAID usecase),Y(JM only for eSIM), N/A(for JM MSISDN)
relatedParty[].idStringRepresents the unique identifier of the Dealer Name.Y (PA for POSTPAID eSIM usecase & both PREPAID usecase),N/A(JM)
relatedParty[].nameStringName of the related entity.Y (PA for both PREPAID usecase),N/A(JM)
relatedParty[].roleStringRole played by the related partyY (PA for POSTPAID eSIM usecase & both PREPAID usecase),N/A(JM)
relatedParty[].'@referredType'StringThe actual type of the target instance when needed for disambiguationY (PA for POSTPAID eSIM usecase & both PREPAID usecase),N/A(JM)
nameStringdefines the resource nameY (PA for PREPAID MSISDN usecase),N/A(JM)
descriptionStringdescription of the resourceY (PA for PREPAID MSISDN usecase),N/A(JM)
operationalStateStringA resource operational state type such as enable, disableY (PA for PREPAID MSISDN usecase),N/A(JM)
note.textStringText of the note (extra information for the entity)Y (PA for PREPAID MSISDN usecase),N/A(JM)
resourceRelationship[].relationshipTypeStringType of the resource relationship, such as " reliesOn" if the resource needs another already owned resource to rely onY (PA for PREPAID MSISDN usecase),N/A(JM)
resourceRelationship[].resourceobjectResource is an abstract entity that describes the common set of attributes shared by all concrete resources.Y (PA for PREPAID MSISDN usecase),N/A(JM)
resourceRelationship.resource.idStringIdentifier of an instance of the resource.Y (PA for PREPAID MSISDN usecase),N/A(JM)
resourceRelationship.resource.hrefStringHyperlink referenceY (PA for PREPAID MSISDN usecase),N/A(JM)
resourceRelationship.resource.descriptionStringdescription of the resourceY (PA for PREPAID MSISDN usecase),N/A(JM)
resourceCharacteristic subResource -Data Model
field nametypedescriptionrequired (mandatory-Y, optional-N,conditionallyMandatory-C/M, Not applicable- N/A)examples
resourceCharacteristic[].name == "IMSI"StringInternational Mobile Subscriber Identity, a unique identifier for a eSIM card.Y (PA for eSIM usecase),Y(only for JM eSIM)PA & JM:
{
"name":"IMSI",
"valueType":"string",
"value":"71401100786000"
}
resourceCharacteristic[].name == "PIN1"StringPersonal Identification Number used to lock the eSIM card for security.Y (PA for eSIM usecase),Y(only for JM eSIM)PA & JM:
{
"name":"PIN1",
"valueType":"string",
"value":"6012"
}
resourceCharacteristic[].name == "PIN2"StringSecondary PIN used for specific eSIM-related operations, like managing services.Y (PA for eSIM usecase),Y(only for JM eSIM)PA & JM:
{
"name":"PIN2",
"valueType":"string",
"value":"2802"
}
resourceCharacteristic[].name == "PUK1"StringPersonal Unblocking Key used to unblock the eSIM after multiple incorrect PIN1 attempts.Y (PA for eSIM usecase),Y(only for JM eSIM)PA & JM:
{
"name":"PUK1",
"valueType":"string",
"value":"3177"
}
resourceCharacteristic[].name == "PUK2"StringPersonal Unblocking Key used to unblock the eSIM after multiple incorrect PIN2 attempts.Y (PA for eSIM usecase),Y(only for JM eSIM)PA & JM:
{
"name":"PUK2",
"valueType":"string",
"value":"3177"
}
resourceCharacteristic[].name == "prepaidInd"StringIndicates whether the eSIM card is for a prepaid service (True/False).Y (PA for eSIM usecase),N/A(JM)PA:
{
"name":"prepaidInd",
"valueType":"boolean",
"value": false
}
resourceCharacteristic[].name == "ACTIVATION-CODE"StringA code used to activate the eSIM card for use with the network.Y (PA for eSIM usecase),Y(only for JM eSIM)PA & JM:
{
"name":"ACTIVATION-CODE",
"valueType":"string",
"value": "1$sm-v4-099-a-gtm.pr.go-esim.com$0AFD51373501277C842B5B396BF73B87"
}
resourceCharacteristic[].name =="KI"Stringretrieving sim infoY (PA for PREPAID eSIM usecase),N/A(JM)PA:
{ "name": "KI",
"valueType": "String",
"value": "07966D60F2195B3C2D4A8A36186E92BF"
}
resourceCharacteristic[].name =="SIM-PROVID"Stringretrieving sim infoY (PA for PREPAID eSIM usecase),N/A(JM)PA:
{
"name": "SIM-PROVID",
"valueType": "String",
"value": "05.06"
}
resourceCharacteristic[].name =="PREPAID-DEALER"StringIndicates the name or type of dealer originally associated with prepaid activationY (PA for PREPAID eSIM usecase),N/A(JM)PA:
{
"name": "PREPAID-DEALER",
"valueType": "String",
"value": "ECOM"
}
resourceCharacteristic[].name =="SERVICE"StringIndicates whether the current service is Prepaid or PostpaidY (PA for PREPAID eSIM & MSISDN usecase),N/A(JM)PA:
{
"name": "SERVICE",
"valueType": "String",
"value": "PREPAID"
}
resourceCharacteristic[].name =="SERVICE"StringIndicates whether the current service is Prepaid or PostpaidY (JM for POSTPAID eSIM),JM:
{
"name": "SERVICE",
"valueType": "String",
"value": "POSTPAID"
}
resourceCharacteristic[].name =="DataType"StringSpecifies the type of data plan associated with the numberY (PA for PREPAID MSISDN usecase),N/A(JM)PA:
{
"name": "DataType",
"valueType": "string",
"value": "PREPAID"
}
resourceCharacteristic[].name =="MED-ACTION"Stringan attribute of the Border Gateway Protocol (BGP), to influence how a neighboring network routes incoming traffic.N (PA for PREPAID MSISDN usecase),N/A(JM)PA:
{
"name": "MED-ACTION",
"valueType": "string",
"value": "PIPRE"
}
resourceCharacteristic[].name =="PORT-STATUS"StringStatus of the portN (PA for PREPAID MSISDN usecase),N/A(JM)PA:
{
"name": "PORT-STATUS",
"valueType": "string",
"value": "PI-COMPLETE"
}
resourceCharacteristic[].name =="SERVICE-ORIGINAL"StringIndicates the original service type at the time of provisioning or activationN (PA for PREPAID MSISDN usecase),N/A(JM)PA:
{
"name": "SERVICE-ORIGINAL",
"valueType": "string",
"value": "POSTPAID"
}
resourceCharacteristic[].name =="TERTIO-DATETIME"StringA telecommunications service activation and provisioning software with standard date time.N (PA for PREPAID MSISDN usecase),N/A(JM)PA:
{
"name": "TERTIO-DATETIME",
"valueType": "string",
"value": "23/09/2024 20:57:58"
}
resourceCharacteristic[].name =="SDP"StringIndicates the Service Data Point (SDP) responsible for service management or ratingY (PA for PREPAID MSISDN usecase),N/A(JM)PA:
{
"name": "SDP",
"valueType": "string",
"value": null
}
resourceCharacteristic[].name =="PortDetails"StringIt provides details of the port such as port type, foreign number status, and previous service providerY (PA for PREPAID MSISDN usecase),N/A(JM)PA:
{
"name": "PortDetails",
"valueType": "object",
"value": []
}
resourceCharacteristic[].name=='PortDetails' subResource - Data Model
field nametypedescriptionrequired (mandatory-Y, optional-N, conditionallyMandatory-C/M, Not applicable- N/A)examples
resourceCharacteristic[].value[].name=="portOldSp"StringThe old service provider ID or codeY (PA for PREPAID MSISDN usecase),N/A(JM)PA:
{
"name": "portOldSp",
"valueType": "string",
"value": "999"
}
resourceCharacteristic[].value[].name=="portType"StringIndicates the type of portY (PA for PREPAID MSISDN usecase),N/A(JM)PA:
{
"name": "portType",
"valueType": "string",
"value": "PortIn"
}
resourceCharacteristic[].value[].name=="foreignNumber"StringIndicates whether this number is native to the
service provider or belongs to another
provider.
Y (PA for PREPAID MSISDN usecase),N/A(JM)PA:
{
"name": "foreignNumber",
"valueType": "boolean",
"value": "Y"
}
Keyconsiderations
GET/logicalResource
PA Implementation

MSISDN Usecase

**POSTPAID**
- For MSISDN usecase applicable queryParams are: @type, place.id, resourceStatus, value.
- To retrieve available service numbers (MSISDN), set '@type' to "MSISDN" and pass valid place.id value.
- To retrieve reserved service numbers (MSISDN), set 'resourceStatus" to 'reserved' and pass valid MSISDN number in 'value' field.
- To get available service numbers 'resourceStatus' queryparam is optional.
- To get available serviceNumbers (MSISDN), refer to below sample example:
  response - "PA_listAvailable_serviceNumber_Response" in API specification

**PREPAID**
- For MSISDN usecase applicable queryParams are: resourceStatus, resourceCharacteristic.name, resourceCharacteristic.value, limit.
- To retrieve available MSISDN numbers, set the resourceStatus to "Active".
- If we need to retrieve 'PREPAID' MSISDN numbers we need to pass resourceCharacteristic.name == "SERVICE" and resourceCharacteristic.value == "PREPAID".
- limit should be mandatory and greater than or equals to 1.
- The list of resourceCharacteristics in the response varies based on the userDataType, userDataValue fields retrieved in userDataList from TNM system response.

ESIM Usecase

 - This is implemented for mobile postpaid & prepaid customers
 - For ESIM usecase applicable queryParams are: @type, resourceStatus, relatedParty.id,  relatedParty.role, resourceCharacteristic.name, resourceCharacteristic.value, limit.
 - To retrieve available eSIM numbers (ICCID), set '@type' to "ESIM".
 - relatedParty[].id and relatedParty[].role are mandatory fields when '@type' equals to "ESIM".
 - To retrieve available eSIM numbers (ICCID), set the resourceStatus to "available".This queryparam is optional, By default value "available" will be set.
 - If we need to retrieve 'POSTPAID' eSIM numbers we need to pass resourceCharacteristic.name == "SERVICE" and resourceCharacteristic.value == "POSTPAID" else available eSIM numbers will be returned.
 - If we need to retrieve 'PREPAID' eSIM numbers we need to pass resourceCharacteristic.name == "SERVICE" and resourceCharacteristic.value == "PREPAID" else available eSIM numbers will be returned.
 - limit should be mandatory and greater than or equals to 1
 - Dealer Code Configuration:
          * Dealer code defines the pool of eSIMs allocated to each channel.
          * Business must decide the dealer code.
          * TNM must configure it for:
                 -> eCommerce – dealer code: "ECOM"
                 -> Super App – dealer code: TBD
 - In Response these fields are mandatory - ResourceStatus, KI, IMSI,ICCID, PIN1, PUK1, PIN2, PUK2,ACTIVATION-CODE, SIM-TYPE,PREPAID-DEALER.
 - To get available eSIM (ICCID), refer to below sample example:
  response - "PA_listAvailable_eSIMNumber_Response" in API specification
Liberty Caribbean Markets Implementation

MSISDN Usecase

- This is implemented for postpaid customers for JM market.
- Mandatory queryParams to retrieve available MSISDN: @type, place.id.
    - set '@type' queryParam to "MSISDN" and pass valid place identifier for place.id.
    - Optional queryParam: 'resourceStatus', If passed then value need to be set to 'available'.
- We will get a Minimum of 1 to Maximum of 20 available service numbers from Liberate.
- Refer to below sample example for get available service numbers:
  response - "JM_listAvailable_serviceNumber_Response" in API specification

ICCID Usecase

- This is implemented for postpaid customers for JM market.
- Mandatory queryParams to retrieve available ICCID: @type, resourceCharacteristic.name, resourceCharacteristic.value.
   - set '@type' queryParam to "ESIM"
   - To retrieve POSTPAID ICCID we need to pass resourceCharacteristic.name == "SERVICE" and resourceCharacteristic.value == "POSTPAID".
- Liberate will return only one ICCID number at a time.

Note : For response examples please refer to this URL Get LogicalResource Specification

GET/logicalResource/{id}
PA Implementation

MSISDN & ESIM Usecase


**PREPAID**

- For MSISDN usecase applicable queryParams are: '@type'.
- Expected values for '@type' are : 'ESIM' or 'MSISDN'.
- In response 'resourceStatus' is mandatory to identify the state of ESIM(ICCID) or Service(MSISDN) Number.

Note : For response examples please refer to this URL Get LogicalResource By Id Specification


Reviews